home *** CD-ROM | disk | FTP | other *** search
/ Software of the Month Club 2000 October / Software of the Month - Ultimate Collection Shareware 277.iso / pc / PROGRAMS / UTILITY / WINLINUX / DATA1.CAB / programs_-_include / LINUX / MSDOS_FS.{1H < prev    next >
Text File  |  1999-09-17  |  2KB  |  58 lines

  1. #ifndef _MSDOS_FS_SB
  2. #define _MSDOS_FS_SB
  3. #include<linux/fat_cvf.h>
  4.  
  5. /*
  6.  * MS-DOS file system in-core superblock data
  7.  */
  8.  
  9. struct fat_mount_options {
  10.     uid_t fs_uid;
  11.     gid_t fs_gid;
  12.     unsigned short fs_umask;
  13.     unsigned short codepage;  /* Codepage for shortname conversions */
  14.     char *iocharset;          /* Charset used for filename input/display */
  15.     unsigned char name_check; /* r = relaxed, n = normal, s = strict */
  16.     unsigned char conversion; /* b = binary, t = text, a = auto */
  17.     unsigned quiet:1,         /* set = fake successful chmods and chowns */
  18.          showexec:1,      /* set = only set x bit for com/exe/bat */
  19.          sys_immutable:1, /* set = system files are immutable */
  20.          dotsOK:1,        /* set = hidden and system files are named '.filename' */
  21.          isvfat:1,        /* 0=no vfat long filename support, 1=vfat support */
  22.          utf8:1,      /* Use of UTF8 character set (Default) */
  23.          unicode_xlate:1, /* create escape sequences for unhandled Unicode */
  24.          posixfs:1,       /* Allow names like makefile and Makefile to coexist */
  25.          numtail:1,       /* Does first alias have a numeric '~1' type tail? */
  26.          atari:1,         /* Use Atari GEMDOS variation of MS-DOS fs */
  27.          fat32:1;      /* Is this a FAT32 partition? */
  28. };
  29.  
  30. struct vfat_unicode {
  31.     unsigned char uni1;
  32.     unsigned char uni2;
  33. };
  34.  
  35. struct msdos_sb_info {
  36.     unsigned short cluster_size; /* sectors/cluster */
  37.     unsigned char fats,fat_bits; /* number of FATs, FAT bits (12 or 16) */
  38.     unsigned short fat_start;
  39.     unsigned long fat_length;    /* FAT start & length (sec.) */
  40.     unsigned long dir_start;
  41.     unsigned short dir_entries;  /* root dir start & entries */
  42.     unsigned long data_start;    /* first data sector */
  43.     unsigned long clusters;      /* number of clusters */
  44.     unsigned long root_cluster;  /* first cluster of the root directory */
  45.     unsigned long fsinfo_offset; /* FAT32 fsinfo offset from start of disk */
  46.     struct wait_queue *fat_wait;
  47.     int fat_lock;
  48.     int prev_free;               /* previously returned free cluster number */
  49.     int free_clusters;           /* -1 if undefined */
  50.     struct fat_mount_options options;
  51.     struct nls_table *nls_disk;  /* Codepage used on disk */
  52.     struct nls_table *nls_io;    /* Charset used for input and display */
  53.     struct cvf_format* cvf_format;
  54.     void* private_data;    
  55. };
  56.  
  57. #endif
  58.